home *** CD-ROM | disk | FTP | other *** search
-
- Emacs Help
-
- version: 0.3
- created: 09/08/97 {04:32:40 pm}
- last update: 02/08/01 {08:30:20 pm}
-
-
- The emacs package provides a set of key bindings that mimic those used in
- the Emacs editor. The emacs editor enjoys wide-spread popularity on unix
- systems. Pete Keleher acknowledges it as part of the inspiration for
- Alpha.
-
- The procedures and commands that get key bindings through this package
- primarily deal with: navigation in the text (buffer), text manipulation,
- and window appearance & positioning for the most part (aside: the use of
- the word "buffer" to refer to a text containing window probably comes from
- emacs).
-
- A lot of the key bindings are unusual compared to those used in 'normal'
- Macintosh editor/word processors, so it if fair to wonder what the
- advantages of these bindings are for those not already used to emacs.
- Well, the primary advantage is in keeping your hands close to the home
- keys, you rarely have to move away from the alpha-numeric portion of the
- keyboard into the arrow, keypad or function key areas if you use this
- package.
-
-
- Emacs Submenu
-
-
- Since the bindings/functionality used by emacs may not yet be second nature
- to you, you can have this package include a submenu under 'Edit' that can
- serve as a handy reference to jog your memory, and as an alternative method
- of invoking a desired operation. The inclusion of this submenu is the
- default behavior of this package, if they are already second nature to
- you, or, become so, you can remove it by unchecking 'Use Emacs Menu' under
- the 'Miscellaneous' section of the globals dialog.
-
-
- Emacs Key Bindings
-
-
- The control modifier is used in a lot of these bindings, this modifier is
- rarely used in other Macintosh applications, but was the first
- non-ordinary modifier available on early keyboards. Those keyboards had
- only one control key, and it was located where the caplock key is today.
- This kept your hands even more tightly concentrated than the current
- arrangement, you only needed to stretch your little finger over a tiny bit
- and then you could make all your control combinations with ease. Today's
- keyboards are pretty well standardize with the two control keys in the
- lower corners.
-
- This configuration makes these control combinations a little less
- convenient, it's more of a stretch away from the home row position and makes
- the use of one hand to press both the control key and the 'regular' key a
- difficult stretch for some combinations. The reason the control keys have
- assumed their current configuration is that programmers form a pretty small
- subset of the people who use computers so the keyboard makers moved those
- mysterious and "useless" keys out of harms way. Perhaps Pete will one day
- add the ability to swap the cop-lock and lefthand control key functionality
- while you are using alpha. The keyboard I use (a Datadesk Switchboard)
- allows you to do this physically, I find the emacs bindings even more time
- saving in that configuration.
-
- If you do get used to the control key combinations, there is a bonus as
- regards scrollinglist dialogs that you may not be aware of, as long as
- there is a selection in the list, the following key combinations will work:
-
- control'-' (i.e. control-minus) == downArrow,
- control-L == pageDown,
- control-K == pageUp.
-
-
- All of the bindings below start with <control-x>, and then are followed by
- the indicated key. In some cases, the key must be also be preceded by the
- modifier key indicated. For example, <control-x><control-f> will open a
- "Open File" dialog. Click on the hyperlink to open the actual Tcl
- procedure to which the key combination is bound.
-
- This is only a partial list of the bindings associated with the emacs
- package. See the "Edit --> Emacs" submenu for a complete list of the
- functions and bindings.
-
-
- Macros
-
-
- '(' <shift>
-
- command: startKeyboardMacro , also bound to F13
-
- ')' <shift>
-
- command: endKeyboardMacro , also bound to F14
-
- 'e'
-
- command: executeKeyboardMacro , also bound to F15
-
-
- See the "Macros Help" file for more information.
-
- Note: the binding <control-u>, optionally followed by a number, is bound to
- the command: iterationCount , and repeats the following action X number of
- times. If no number is specified, If no number is entered, the action will
- be repeated 4 times.
-
- For example, typing
-
- <control-u><3><control-x><e>
-
- will repeat the most recently defined macro 3 times in succession.
-
-
- Alpha Shortcuts
-
-
- 'c' <control>
-
- command: quit , also bound to <command-q>
-
- Quits Alpha, prompting to save any open modified files if necessary.
-
- 'f' <control>
-
- proc: findFile , also bound to <command-o>
-
- Opens an "Open File" standard dialog.
-
- 'm'
-
- proc: matchingLines
-
- Opens a dialog in which you can enter a regular expression to be searched
- in the current window.
-
-
- Window Manipulation
-
-
- '1'
-
- proc: zoom , also bound to <control-/>
-
- Toggles the size of the current window from full to default.
-
- 'b'
-
- proc: chooseWindowStatus , also bound to <control-;>
-
- Opens a dialog containing all of the current windows.
-
- 'k'
-
- proc: killWindowStatus , also bound to <command-w>
-
- Closes the current window, prompting to save if necessary.
-
- 'o'
-
- proc: otherThing
-
- If the current window is not a "split-pane", switches to the last previous
- frontmost window. If the current window IS a "split-pane", switches to the
- other pane.
-
- 's' <control>
-
- command: save , also bound to <command-s>
-
- Saves the current window.
-
-
- 'w' <control>
-
- command: saveAs
-
- Opens a standard "Save As" dialog.
-
-
- Text and Cursor Manipulation
-
-
- 'd'
-
- proc: killRegion
-
- Kills the region between the current mark point and the cursor.
-
- 'l'
-
- command: currentPosition
-
- Returns a status message displaying the current position (in bytes).
-
- 'u'
-
- command: undo , also bound to <command-z>
-
- Undo the most recent action.
-
- 'x' <control>
-
- command: exchangePointAndMark , also bound to numeric keypad 5
-
- Exchanges the cursor point and the previous mark. See the numeric key pad
- section in the help file "Default Key Bindings" for more information.
-
-
- Again, these are only some of the key bindings associated with the Emacs
- package. Many more can be found in the "Edit --> Emacs" menu.
-
-
- Meta Keys
-
-
- The other modifier keys that emacs had to work with on early keyboards was
- the escape key, and, if the keyboard provide it, an additional modifier key
- that emacs refers to as the "meta" key. Not all keyboards had such a
- modifier, and, if they did, rarely called it the same thing. In this emac
- mimicking keyset, the option key is used as the emac "meta" key.
-
-
- Recent Changes
-
-
- NEW OPTION:
-
- In the "Config --> Preferences --> Miscellaneous…" dialog, there is a flag
- called " 'emac'Last Word If Touching ", if this flag is checked, the
- behavior of a few emac-bound procedures changes. Those procedures are:
-
- proc: upcaseWord
- proc: downcaseWord
- proc: capitalizeWord
- proc: hiliteWord
-
- Those procedures behave as normal except when the cursor is right at the
- end of a word. In that case they effect the word they are "touching". I
- find this convenient as after I have typed a word is the usual point at
- which I realize that I should have capitalized it. Ditto for the others.
-
- NEW PROC AND KEY-BINDING:
-
- There is one navigation binding that was not in the previous emacs
- packages, that was a binding for "beginningOfLogicalLine", what that proc
- does is get you to the first non-white character of the current line. Its
- emac-like binding is <escape>-m.
-
-
- ----------------------------------------------------------------------
-
- Author: ??
-
- Emacs Help file updated by Craig Barton Upright
-
- E-mail: <cupright@princeton.edu>
- mail: Princeton University, Department of Sociology
- Princeton, New Jersey 08544
- www: <http://www.princeton.edu/~cupright/>
-
-